//package com.heima.user.service.impl;
//
//import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
//import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
//import com.heima.apis.wemedia.IWmUserClient;
//import com.heima.model.common.dtos.PageResponseResult;
//import com.heima.model.common.dtos.ResponseResult;
//import com.heima.model.common.enums.AppHttpCodeEnum;
//import com.heima.model.user.dtos.AuthDto;
//import com.heima.model.user.pojos.ApUser;
//import com.heima.model.user.pojos.ApUserRealname;
//import com.heima.user.mapper.ApUserMapper;
//import com.heima.user.mapper.ApUserRealnameMapper;
//import com.heima.user.service.ApUserRealnameService;
//import lombok.extern.slf4j.Slf4j;
//import org.springframework.beans.factory.annotation.Autowired;
//import org.springframework.stereotype.Service;
//import org.springframework.transaction.annotation.Transactional;
//
//import javax.xml.transform.Result;
//import java.util.HashMap;
//import java.util.Map;
//
///**
// * @author zzy
// * @date 2022/7/27 20:03
// */
//
//@Service
//@Slf4j
//public class ApUserRealnameServiceImpl implements ApUserRealnameService {
//
//    @Autowired
//    private ApUserRealnameMapper apUserRealnameMapper;
//
//    @Autowired
//    private IWmUserClient iWmUserClient;
//    @Autowired
//    private ApUserMapper apUserMapper;
//
//    @Override
//    public PageResponseResult list(AuthDto dto) {
//        if (dto == null) {
//            return new PageResponseResult(0, 0, 0);
//        }
//        dto.checkParam();
//        Integer size = dto.getSize();
//        Integer page = dto.getPage();
//
//        Page<ApUserRealname> pageInfo = new Page<>(page, size);
//        LambdaQueryWrapper<ApUserRealname> wrapper = new LambdaQueryWrapper<>();
//        wrapper.eq(dto.getStatus() != null, ApUserRealname::getStatus, dto.getStatus());
//
//        Page<ApUserRealname> realnamePage = apUserRealnameMapper.selectPage(pageInfo, wrapper);
//
//        long total = realnamePage.getTotal();
//        PageResponseResult pageResponseResult = new PageResponseResult(page, size, (int) total);
//        pageResponseResult.setData(realnamePage.getRecords());
//        return pageResponseResult;
//    }
//
//
//    @Override
//    @Transactional(rollbackFor = RuntimeException.class)
//    public ResponseResult auth(AuthDto dto, Integer type) {
//        if (dto == null) {
//            return ResponseResult.errorResult(AppHttpCodeEnum.DATA_NOT_EXIST);
//        }
//        Integer id = dto.getId();
//        ApUserRealname apUserRealname1 = apUserRealnameMapper.selectById(id);
//        if (apUserRealname1 == null) {
//            return ResponseResult.errorResult(AppHttpCodeEnum.DATA_NOT_EXIST);
//        }
//
//        //跟新审核状态
//        ApUserRealname apUserRealname = new ApUserRealname();
//        apUserRealname.setStatus((short) (type == 1 ? 9 : 2));
//        apUserRealname.setId(id);
//        apUserRealname.setReason(dto.getMsg());
//        apUserRealnameMapper.updateById(apUserRealname);
//
//
//        //判断审核通过
//        if (type == 1) {
//            String name = apUserRealname.getName();
//            Map<String, String> map = new HashMap<>();
//            map.put("name",name);
//            ResponseResult responseResult = iWmUserClient.addUser(map);
//            if (responseResult == null || responseResult.getCode() != 200) {
//                throw new RuntimeException("自媒体用户创建失败");
//            }
//
//            ApUser apUser = new ApUser();
//            apUser.setId(apUserRealname.getUserId());
//            apUser.setFlag((short) 1);
//
//            int updateResult = apUserMapper.updateById(apUser);
//
//            if (updateResult < 1) {
//                throw new RuntimeException("App用户状态更新失败");
//            }
//
//        }
//        return ResponseResult.okResult(AppHttpCodeEnum.SUCCESS);
//    }
//}
